﻿namespace SocketCore.Common.Event;

public class SocketMessage
{
}

public class SocketLogMessage
{
    public LogLevel Level { get; init; }
    public string Message { get; init; }
    public Exception? Exception { get; init; }
}

public enum LogLevel
{
    Info,
    Debug,
    Warning,
    Error
}

public class SocketHeartbeatMessage
{
    public string Message { get; init; }
    public DateTimeOffset Timestamp { get; } = DateTimeOffset.Now;
}

public class SocketClientConnect
{
    public string ClientInfo { get; init; }
    public bool IsConnect { get; init; }
    public DateTimeOffset Timestamp { get; } = DateTimeOffset.Now;
}

public class SocketClientMessage
{
    public string ClientInfo { get; init; }
    public string Message { get; init; }
    public DateTimeOffset Timestamp { get; } = DateTimeOffset.Now;
}